/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.tomasio.projects.welcome.model;

import com.tomasio.projects.welcome.dto.BloqueioDeAcessoDTO;

/**
 *
 * @author administrador
 */
public class BloqueioDeAcesso {
    private Long id;
    private TipoBloqueio tipo;
    private String motivo;
    private boolean ativo;


    private BloqueioDeAcesso() {
    }

    public BloqueioDeAcesso(BloqueioDeAcessoDTO dto) {
        if( dto != null){
            this.id = dto.getId();
            this.tipo = dto.getTipo();
            this.motivo = dto.getMotivo();
            this.ativo = dto.isAtivo();
        }
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public boolean isAtivo() {
        return ativo;
    }

    public void setAtivo(boolean ativo) {
        this.ativo = ativo;
    }

    public String getMotivo() {
        return motivo;
    }

    public void setMotivo(String motivo) {
        this.motivo = motivo;
    }

    public TipoBloqueio getTipo() {
        return tipo;
    }

    public void setTipo(TipoBloqueio tipo) {
        this.tipo = tipo;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final BloqueioDeAcesso other = (BloqueioDeAcesso) obj;
        if (this.id != other.id && (this.id == null || !this.id.equals(other.id))) {
            return false;
        }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 3;
        hash = 53 * hash + (this.tipo != null ? this.tipo.hashCode() : 0);
        return hash;
    }

    public BloqueioDeAcessoDTO createDTO() {
        BloqueioDeAcessoDTO dto = new BloqueioDeAcessoDTO();
        dto.setId(id);
        dto.setMotivo(motivo);
        dto.setTipo(tipo);
        dto.setAtivo(ativo);
        return dto;
    }

}
